gtk4.git
10 years agoGktPlacesSidebar: Plug a ton of leaks
Matthias Clasen [Tue, 23 Jun 2015 20:06:30 +0000 (16:06 -0400)]
GktPlacesSidebar: Plug a ton of leaks

If you don't keep in mind that g_object_get() returns references to
objects and copies fo strings, things leak all over the place.

10 years agosidebarrow: Avoid object-valued properties
Matthias Clasen [Tue, 23 Jun 2015 18:42:57 +0000 (14:42 -0400)]
sidebarrow: Avoid object-valued properties

They tend to leak...as these do.

10 years agorender: Fix ridge/groove border rendering
Benjamin Otte [Tue, 23 Jun 2015 19:45:33 +0000 (21:45 +0200)]
render: Fix ridge/groove border rendering

The typo strikes again!

10 years agoGtkHeaderBar: reduce minimum title width
Christoph Reiter [Tue, 23 Jun 2015 08:54:39 +0000 (10:54 +0200)]
GtkHeaderBar: reduce minimum title width

The minimum title width affects the minimum window width
for CSD windows. To allow smaller windows like without
CSD reduce it a bit (276px vs 156px min width)

https://bugzilla.gnome.org/show_bug.cgi?id=751341

10 years agoGtkWindow: fix default empty window size with CSD
Christoph Reiter [Mon, 22 Jun 2015 18:36:50 +0000 (20:36 +0200)]
GtkWindow: fix default empty window size with CSD

In the non-CSD case we checked for 0x0 window size requisition
and replaced it with 200x200 so the window was still visible.
This no longer works in case of CSD as the shadow and title bar
are always added to the requisition resulting in a titlebar/shadow
only window in case there is no child widget (this is currently
visible under wayland or when setting GTK_CSD=1).

Instead of special casing the final window size, special case
the child requisition paths instead. This gives us the same
requisition in both, CSD and non-CSD cases (the header bar
has a too large minimum width atm so the resulting window is
still not the same)

https://bugzilla.gnome.org/show_bug.cgi?id=751341

10 years agomir: fix toggling between maximized and restored
William Hua [Mon, 22 Jun 2015 16:31:32 +0000 (12:31 -0400)]
mir: fix toggling between maximized and restored

10 years agomir: fix wheel scrolling in both directions
William Hua [Mon, 22 Jun 2015 02:13:27 +0000 (22:13 -0400)]
mir: fix wheel scrolling in both directions

10 years agomir: emit GDK_ENTER_NOTIFY on pointer enter
William Hua [Mon, 22 Jun 2015 02:07:44 +0000 (22:07 -0400)]
mir: emit GDK_ENTER_NOTIFY on pointer enter

10 years agomir: remove non-useful logging
William Hua [Fri, 19 Jun 2015 19:16:27 +0000 (15:16 -0400)]
mir: remove non-useful logging

10 years agomir: don't need dummy egl surface
William Hua [Fri, 19 Jun 2015 15:29:08 +0000 (11:29 -0400)]
mir: don't need dummy egl surface

10 years agomir: emit configure event on window move/resize
William Hua [Thu, 18 Jun 2015 14:39:28 +0000 (10:39 -0400)]
mir: emit configure event on window move/resize

Without this, some windows don't restart the paint clock needed to
actually render the contents.

10 years agomir: fix build due to missing api
William Hua [Fri, 12 Jun 2015 16:43:47 +0000 (12:43 -0400)]
mir: fix build due to missing api

10 years agoAdwaita: scale marks visible on the dark variant
Lapo Calamandrei [Tue, 23 Jun 2015 17:11:15 +0000 (19:11 +0200)]
Adwaita: scale marks visible on the dark variant

10 years agoUpdated Hungarian translation
Balázs Úr [Tue, 23 Jun 2015 13:59:34 +0000 (13:59 +0000)]
Updated Hungarian translation

10 years agoGtkScale: More work on mark spacing
Matthias Clasen [Tue, 23 Jun 2015 13:33:30 +0000 (09:33 -0400)]
GtkScale: More work on mark spacing

Try harder not to push the scale out of balance by marks. With
this change, the remaining difference in the drawing is down
to asymmetric assets and margins coming out of the theme.
To fully support such asymmetric rendering, we need implement
baseline alignment for scales.

https://bugzilla.gnome.org/show_bug.cgi?id=749650

10 years agoprinting: Get output bin via IPP
Marek Kasik [Tue, 23 Jun 2015 11:28:21 +0000 (13:28 +0200)]
printing: Get output bin via IPP

Request "output-bin-supported" and "output-bin-default" attributes through
IPP if there is no PPD for selected printer.
Pass "output-bin" option with other options in printer_get_options().
Translate standard IPP values of "output-bin" option.

https://bugzilla.gnome.org/show_bug.cgi?id=725441

10 years agoGtkStack: Avoid some unnecessary complication
Matthias Clasen [Tue, 23 Jun 2015 10:44:31 +0000 (06:44 -0400)]
GtkStack: Avoid some unnecessary complication

We already have an in-destruction flag, so use it.

10 years agoFix calculation of edge input window size in case the real window is too small.
Christoph Reiter [Sat, 20 Jun 2015 11:27:20 +0000 (13:27 +0200)]
Fix calculation of edge input window size in case the real window is too small.

This error resulted in warnings like
"pixman_region32_init_rect: Invalid rectangle passed"

In case the window is smaller than handle_size * 2 the resulting
edge window got a negative size. Prevent that by limiting the
handle size to half the respective edge length. This also
prevents the corner windows from overlapping in case the window
is too small.

10 years agoRevert "window: Check if we can use CSD before enabling them"
Emmanuele Bassi [Mon, 22 Jun 2015 13:19:29 +0000 (14:19 +0100)]
Revert "window: Check if we can use CSD before enabling them"

This reverts commit c5e5ee67490e7e7af56052d8f8beb75db002c2f1.

It turns out that this commit breaks the default sizing of GtkWindow,
which in turn causes the window to be smaller than the handle size,
which ends up sending invalid rectangles to Cairo.

We'll have to find another way to fix the CSD issue.

See also: https://bugzilla.gnome.org/show_bug.cgi?id=751140

https://bugzilla.gnome.org/show_bug.cgi?id=750343

10 years agoAvoid spurious operations on destroy
Paolo Borelli [Sun, 16 Feb 2014 21:22:59 +0000 (22:22 +0100)]
Avoid spurious operations on destroy

When the stack is destroyed we do not want to waste time running
animations and notifying listeners about which is our current
visible child.

This is not only an optimization, but it is important for the stack
switcher widgets: since they are in another branch of the hieratchy
we do not want to get notifications while the stack is being destroyed.

Based on a patch by Paolo Borelli
https://bugzilla.gnome.org/show_bug.cgi?id=724506

10 years agoPacify gobject-introspection
Matthias Clasen [Sun, 21 Jun 2015 00:29:18 +0000 (20:29 -0400)]
Pacify gobject-introspection

gobject-introspection complains about the parameter names of
vfuncs. Why, you ask ? No idea.

10 years agoGtkRange: Improve zoom handling a bit
Matthias Clasen [Sun, 21 Jun 2015 00:26:42 +0000 (20:26 -0400)]
GtkRange: Improve zoom handling a bit

The calculation to update the initial slider position on zoom
changes was not working correctly when using keys to toggle
zoom on and off for scales. Avoid it by updating the position
beforehand.

10 years agoGtkRange: Make drag gesture less agressive
Matthias Clasen [Sat, 20 Jun 2015 22:37:15 +0000 (18:37 -0400)]
GtkRange: Make drag gesture less agressive

Moving the mouse while pressing one of the steppers was making
the slider jump to the end, unexpectedly. This was caused by the
drag gesture kicking in when it shouldn't. Fix this by making
all drag gesture signal handlers only do something if we are in
a drag thats started on the slider.

https://bugzilla.gnome.org/show_bug.cgi?id=751050

10 years agofile chooser: Avoid tall combos
Caolán McNamara [Fri, 19 Jun 2015 14:47:53 +0000 (15:47 +0100)]
file chooser: Avoid tall combos

The filter combo box in the file chooser was stretching to match
the height of the extra widgets next to it. Since, stretched combo
boxes are not a pretty sight, make it stick to the top instead.

Patch by Caolán McNamara,

https://bugzilla.gnome.org/show_bug.cgi?id=751227

10 years agoGtkOverlay: Sync up parameter names
Matthias Clasen [Sat, 20 Jun 2015 14:52:44 +0000 (10:52 -0400)]
GtkOverlay: Sync up parameter names

gtk-doc gets confused if the parameter names between header,
source and doc comment don't match up.

10 years agoFix a typo
Matthias Clasen [Sat, 20 Jun 2015 14:52:01 +0000 (10:52 -0400)]
Fix a typo

gtk-doc complained about a multi-line Since: tag, but the
real culprit was a typo in the Deprecated: tag.

10 years agoTell gtk-doc to ignore private headers
Matthias Clasen [Sat, 20 Jun 2015 14:47:18 +0000 (10:47 -0400)]
Tell gtk-doc to ignore private headers

Tell gtk-doc to ignore new private headers as well, otherwise
it complains about undocumented symbols in them.

10 years agoGtkWindow: Small documentation addition
Matthias Clasen [Sat, 20 Jun 2015 14:36:09 +0000 (10:36 -0400)]
GtkWindow: Small documentation addition

10 years agoGtkTextView: Small documentation addition
Matthias Clasen [Sat, 20 Jun 2015 14:33:56 +0000 (10:33 -0400)]
GtkTextView: Small documentation addition

10 years agoFix up index for some 3.14 symbols
Matthias Clasen [Sat, 20 Jun 2015 14:28:03 +0000 (10:28 -0400)]
Fix up index for some 3.14 symbols

Marking these as "Since: 3.14.1" may be more accurate, but
it causes gtk-doc to not put these symbols in any versioned
index at all (it generates an unused index for 3.14.1). So,
lets lie a little, and say these symbols were added in 3.14.

10 years agogtk-demo: Add forgotten source file
Matthias Clasen [Sat, 20 Jun 2015 02:03:19 +0000 (22:03 -0400)]
gtk-demo: Add forgotten source file

The font_features.c file was not added as a resource, so that
gtk3-demo could not display it.

10 years agogtk-demo: Many cosmetic fixes
Matthias Clasen [Sat, 20 Jun 2015 01:59:15 +0000 (21:59 -0400)]
gtk-demo: Many cosmetic fixes

Mostly update window titles, and some addition to descriptions.

10 years agoGtkAssistant: Fix criticals on dispose
Matthias Clasen [Sat, 20 Jun 2015 01:56:29 +0000 (21:56 -0400)]
GtkAssistant: Fix criticals on dispose

After the recent change thta introduced boxes between the pages
and the notebook, we were no longer careful enough when disposing
the assistant. Fix that up.

10 years agogtk3-demo: Improve the overlay demo
Matthias Clasen [Sat, 20 Jun 2015 00:08:15 +0000 (20:08 -0400)]
gtk3-demo: Improve the overlay demo

Add some more information to the description.

10 years agogtk-demo: A better overlay demo
Matthias Clasen [Fri, 19 Jun 2015 22:13:34 +0000 (18:13 -0400)]
gtk-demo: A better overlay demo

This shows the new passthrough feature.

10 years agoUpdated German translation
Christian Kirbach [Fri, 19 Jun 2015 20:58:12 +0000 (20:58 +0000)]
Updated German translation

10 years agoUpdated POTFILES.skip
Piotr Drąg [Fri, 19 Jun 2015 20:20:08 +0000 (22:20 +0200)]
Updated POTFILES.skip

10 years agogtk-demo: Don't Distribute demos.h
Chun-wei Fan [Wed, 20 May 2015 09:31:02 +0000 (17:31 +0800)]
gtk-demo: Don't Distribute demos.h

Since demos.h is now generated according to the platform for which GTK+ is
built, don't distribute it. Generate a Windows-specific demos.h.win32 and
distribute that instead, in which the Visual Studio build files will copy
it to demos.h, so that the build will proceed normally.

https://bugzilla.gnome.org/show_bug.cgi?id=749622

10 years agoBump Pango requirement
Matthias Clasen [Fri, 19 Jun 2015 13:33:39 +0000 (09:33 -0400)]
Bump Pango requirement

The font features demo that was just added uses bleeding-edge
pango features.

10 years agoAdd a font features demo
Matthias Clasen [Fri, 19 Jun 2015 13:28:09 +0000 (09:28 -0400)]
Add a font features demo

This started life as a standalone tool, but it is nicer
to have it integrated in gtk3-demo.

10 years agofile chooser: Small cleanup
Matthias Clasen [Fri, 19 Jun 2015 05:04:42 +0000 (01:04 -0400)]
file chooser: Small cleanup

Ask the search model if it is empty, instead of maintaining this
information manually in the file chooser widget.

10 years agoGtkSearchEngineTracker: Fix SPARQL syntax
Matthias Clasen [Fri, 19 Jun 2015 05:03:42 +0000 (01:03 -0400)]
GtkSearchEngineTracker: Fix SPARQL syntax

The function is called tracker:uri-is-descendant, not
tracker-uri-is-descendant.

10 years agoForgotten file
Matthias Clasen [Fri, 19 Jun 2015 05:03:28 +0000 (01:03 -0400)]
Forgotten file

10 years agoGtkSearchEngineSimple: Avoid a private struct
Matthias Clasen [Fri, 19 Jun 2015 04:48:29 +0000 (00:48 -0400)]
GtkSearchEngineSimple: Avoid a private struct

We can just make this type final, and avoid the private struct.

10 years agoGtkSearchEngineTracker: Avoid a private struct
Matthias Clasen [Fri, 19 Jun 2015 04:41:10 +0000 (00:41 -0400)]
GtkSearchEngineTracker: Avoid a private struct

We can just make this type final, and avoid the private struct.

10 years agoAvoid an unnecessary check
Matthias Clasen [Fri, 19 Jun 2015 04:34:28 +0000 (00:34 -0400)]
Avoid an unnecessary check

We create the indexed_locations array unconditionally.

10 years agoGtkSearchEngine: Avoid a crash
Matthias Clasen [Fri, 19 Jun 2015 04:32:49 +0000 (00:32 -0400)]
GtkSearchEngine: Avoid a crash

Add a destroy notify for the data of the callback, so we don't
end up leaving a dangling pointer behind for a short while if
the native engine is finalized before the simple one. This
was showing up as crash when typing and backspacing in the
search entry of the file chooser.

10 years agoGtkSearchEngine: Avoid crawling indexed locations
Matthias Clasen [Fri, 19 Jun 2015 04:12:46 +0000 (00:12 -0400)]
GtkSearchEngine: Avoid crawling indexed locations

Implement the IsIndexed callback for tracker. This requires
reading settings of the tracker file miner. We are careful
to avoid a hard dependency on the tracker schemas.

10 years agoGtkSearchEngine: Avoid crawling indexed locations
Matthias Clasen [Fri, 19 Jun 2015 04:11:01 +0000 (00:11 -0400)]
GtkSearchEngine: Avoid crawling indexed locations

Add a framework to the simple engine that allows to skip
locations which are indexed by the native engine.

10 years agoGtkSearchEngine: Initialize recursive flag
Matthias Clasen [Fri, 19 Jun 2015 04:06:14 +0000 (00:06 -0400)]
GtkSearchEngine: Initialize recursive flag

Otherwise all our searches become non-recursive, which was not
the intention.

10 years agoGtkSearchEngine: Add recursive flag
Matthias Clasen [Fri, 19 Jun 2015 02:44:11 +0000 (22:44 -0400)]
GtkSearchEngine: Add recursive flag

Add a flag for recursive search, and implement non-recursive
search in both the tracker and simple search engines.

This is not currently used in the file chooser.

10 years agoRemove an unused field
Matthias Clasen [Fri, 19 Jun 2015 02:40:49 +0000 (22:40 -0400)]
Remove an unused field

10 years agoGtkSearchEngine: Remove unused code
Matthias Clasen [Thu, 18 Jun 2015 21:08:09 +0000 (17:08 -0400)]
GtkSearchEngine: Remove unused code

Nothing ever uses or emits the hits-subtracted signal.
Nautilus dropped it a few years ago. Time to follow suit.

10 years agoUse infos from search engine instead of getting them again
Matthias Clasen [Thu, 18 Jun 2015 19:18:30 +0000 (15:18 -0400)]
Use infos from search engine instead of getting them again

When the search engine provides hits with GFileInfo, use that
to add the hits to the model directly, without going through
another round of async get_info calls.

To do this, we add a batched variant of the
_gtk_file_system_model_update_file call that takes lists of
GFiles and GFileInfos. Again, we can avoid repeated resorting
that happens when the files are updated individually.

10 years agoFix an oversight in the previous commit
Matthias Clasen [Thu, 18 Jun 2015 19:14:54 +0000 (15:14 -0400)]
Fix an oversight in the previous commit

We lost the line marking the search model as non-empty, causing
us to show the 'no results' page despite there being results.

10 years agoRequest the right attributes in the simple search engine
Matthias Clasen [Thu, 18 Jun 2015 18:37:23 +0000 (14:37 -0400)]
Request the right attributes in the simple search engine

This change makes it so that the file info passed along
from the simple search engine has all the attributes that
the file system model wants.

10 years agosearch engine: Pass file infos along for hits
Matthias Clasen [Thu, 18 Jun 2015 18:31:02 +0000 (14:31 -0400)]
search engine: Pass file infos along for hits

10 years agofile chooser: Use batched insertion for search results
Matthias Clasen [Thu, 18 Jun 2015 16:20:21 +0000 (12:20 -0400)]
file chooser: Use batched insertion for search results

This helps avoiding excess work when procesing many search
results, as typically happens with short search strings
and recursive search.

https://bugzilla.gnome.org/show_bug.cgi?id=751169

10 years agofile system model: Add batched insertion
Matthias Clasen [Thu, 18 Jun 2015 16:19:06 +0000 (12:19 -0400)]
file system model: Add batched insertion

Add a batched version of gtk_file_system_model_add_and_query_file
that takes a list of files and avoids resorting the model for each
individual insertion. The querying is still done one-file-at-a-time,
so more optimization is certainly possible.

10 years agoRevert "window: Reinstate logic for should_use_csd()"
Emmanuele Bassi [Thu, 18 Jun 2015 15:10:36 +0000 (16:10 +0100)]
Revert "window: Reinstate logic for should_use_csd()"

This reverts commit f043fd532dc66a7abb1d4ea57c666655330cc429.

The whole point of having can_use_csd() return TRUE when GTK_CSD is
unset is to use it inside enable_csd().

https://bugzilla.gnome.org/show_bug.cgi?id=751140

10 years agowindow: Reinstate logic for should_use_csd()
Emmanuele Bassi [Thu, 18 Jun 2015 13:48:58 +0000 (14:48 +0100)]
window: Reinstate logic for should_use_csd()

The old should_use_csd() function would return FALSE if the GTK_CSD
environment variable is unset; the change in commit c5e5ee67490e7e7
made it return TRUE if GTK_CSD is unset. This has a cascade effect
on the window size, which causes invalid rectangles to bubble down
to Pixman.

https://bugzilla.gnome.org/show_bug.cgi?id=751140

10 years agogtkdialog: Remove 2px border
Timm Bäder [Thu, 18 Jun 2015 13:37:23 +0000 (15:37 +0200)]
gtkdialog: Remove 2px border

10 years agomessagedialog: remove 2px border
Timm Bäder [Thu, 18 Jun 2015 13:36:03 +0000 (15:36 +0200)]
messagedialog: remove 2px border

10 years agofilechooserdialog: Remove space between window and content
Timm Bäder [Thu, 18 Jun 2015 09:55:29 +0000 (11:55 +0200)]
filechooserdialog: Remove space between window and content

Was removed in 232d6f84f0495e9effedc16d700fc13f5a6e302.

10 years agoAdwaita: indentation
Jakub Steiner [Thu, 18 Jun 2015 11:08:45 +0000 (13:08 +0200)]
Adwaita: indentation

- lapo was shouting at me.

10 years agoAdwaita: volume button and scale button padding
Lapo Calamandrei [Thu, 18 Jun 2015 10:46:00 +0000 (12:46 +0200)]
Adwaita: volume button and scale button padding

I was assuming that GtkVolumeButton and GtkScaleButton could only
contain a icon, now they get the image-button padding by default,
but if the text-button class is applied it is not overridden.

10 years agoAdwaita: scale popup quick fix
Lapo Calamandrei [Thu, 18 Jun 2015 10:33:04 +0000 (12:33 +0200)]
Adwaita: scale popup quick fix

10 years agoAdwaita: markup cleanup
Jakub Steiner [Thu, 18 Jun 2015 10:01:12 +0000 (12:01 +0200)]
Adwaita: markup cleanup

- move touch selection selectors to its own section
- use scss style markup for .button common elsewhere
  (more compact and legible)

10 years agoHC: touch text selection styling
Jakub Steiner [Wed, 17 Jun 2015 11:05:02 +0000 (13:05 +0200)]
HC: touch text selection styling

- sync with Adwaita
- try to avoid using image assets

https://bugzilla.gnome.org/show_bug.cgi?id=750883

10 years agoFix return value error in _gtk_window_get_popover_parent
Ting-Wei Lan [Thu, 18 Jun 2015 04:14:05 +0000 (12:14 +0800)]
Fix return value error in _gtk_window_get_popover_parent

10 years agoCosmetic change
Matthias Clasen [Thu, 18 Jun 2015 00:24:29 +0000 (20:24 -0400)]
Cosmetic change

10 years agoGtkPlacesSidebar: Fix rtl appearance
Matthias Clasen [Thu, 18 Jun 2015 00:07:24 +0000 (20:07 -0400)]
GtkPlacesSidebar: Fix rtl appearance

Apply the necessary directional variants for asymmetric
css padding.

https://bugzilla.gnome.org/show_bug.cgi?id=751084

10 years agooverlay: remove gtk_overlay_add_pass_through_overlay()
Cosimo Cecchi [Tue, 16 Jun 2015 19:02:41 +0000 (12:02 -0700)]
overlay: remove gtk_overlay_add_pass_through_overlay()

The API to access this functionality will be the setter we just added in
the previous commit.

https://bugzilla.gnome.org/show_bug.cgi?id=750568

10 years agooverlay: add setters and getters for pass-through child property
Cosimo Cecchi [Tue, 16 Jun 2015 19:01:30 +0000 (12:01 -0700)]
overlay: add setters and getters for pass-through child property

This will make the API easier to use from bindings too.

https://bugzilla.gnome.org/show_bug.cgi?id=750568

10 years agodocs: add new GtkOverlay methods to gtk3-sections.txt
Cosimo Cecchi [Tue, 16 Jun 2015 18:58:46 +0000 (11:58 -0700)]
docs: add new GtkOverlay methods to gtk3-sections.txt

https://bugzilla.gnome.org/show_bug.cgi?id=750568

10 years agoconfigure: test have_docbook_style != yes, not have_docbook_dtd
Alexander Larsson [Wed, 17 Jun 2015 15:35:18 +0000 (17:35 +0200)]
configure: test have_docbook_style != yes, not have_docbook_dtd

10 years agofile chooser: Drop unused variables
Matthias Clasen [Wed, 17 Jun 2015 10:09:59 +0000 (06:09 -0400)]
file chooser: Drop unused variables

10 years agofile chooser: Use a revealer
Matthias Clasen [Wed, 17 Jun 2015 03:46:34 +0000 (23:46 -0400)]
file chooser: Use a revealer

Use a revealer to manage the visibility of the header area where
we show the pathbar, the location entry or search. This is a bit
smoother, and makes search more similar to a search bar.

10 years agotexthandle: Avoid double rendering of background/frame
Carlos Garnacho [Wed, 17 Jun 2015 13:58:55 +0000 (15:58 +0200)]
texthandle: Avoid double rendering of background/frame

gtk_render_handle() already renders background/frame itself, avoid
doing this twice.

10 years agogtkmain: Ignore grab for events in child popovers
Carlos Garnacho [Mon, 15 Jun 2015 12:07:40 +0000 (14:07 +0200)]
gtkmain: Ignore grab for events in child popovers

Popovers may be spawn when there's GTK+ grabs somewhere else (eg.
text selection popover/handles in an entry in a modal popover). When
this happens, events go to the grab widget (in this case the modal
popover) and are effectively ignored by the event widget, even though
it's can be conceptually a child of the grab widget.

To get away with this, tweak a bit gtk_main_do_event(), so events going
to popovers that are related to grab_widget or a child of it are received,
as it would happen with regular children of grab_widget.

https://bugzilla.gnome.org/show_bug.cgi?id=750993

10 years agowindow: Add concept of popover "parent"
Carlos Garnacho [Mon, 15 Jun 2015 12:05:00 +0000 (14:05 +0200)]
window: Add concept of popover "parent"

This will be the widget that the popover relates to (::pointing-to in
GtkPopover, ::parent in GtkTextHandle).

Additional API to check the popover/parent relationship between widgets
has been added, which will be useful wherever this is necessary in a
generic manner.

https://bugzilla.gnome.org/show_bug.cgi?id=750993

10 years agoFix return value error in gdk_window_set_pass_through
Ting-Wei Lan [Wed, 17 Jun 2015 10:01:48 +0000 (18:01 +0800)]
Fix return value error in gdk_window_set_pass_through

https://bugzilla.gnome.org/show_bug.cgi?id=751099

10 years agowayland: Always request transient commit when mapping subsurface
Jonas Ådahl [Wed, 17 Jun 2015 09:31:19 +0000 (17:31 +0800)]
wayland: Always request transient commit when mapping subsurface

A subsurface positioning operation only takes effect when the parent
surfaces state is applied. If a subsurface is mapped and positioned, but
the parent surface state is not immediately committed, the relative
position of the subsurface is undefined and may be placed incorrectly.

To avoid this undefined state, always request that the parent surface
should be committed after mapping a subsurface so that the position
operation will take effect.

https://bugzilla.gnome.org/show_bug.cgi?id=751098

10 years agotreeview: always pixelcache widget contents
Christian Hergert [Tue, 16 Jun 2015 23:50:44 +0000 (16:50 -0700)]
treeview: always pixelcache widget contents

GtkTreeView has a particularly expensive drawing path. This can cause
issues when part of animated widget sequences. Caching the content while
a model is attached helps reduce the number of full redraws during
exposure greatly.

https://bugzilla.gnome.org/show_bug.cgi?id=751082

10 years agopixelcache: allow widgets to always require cached content
Christian Hergert [Tue, 16 Jun 2015 23:46:24 +0000 (16:46 -0700)]
pixelcache: allow widgets to always require cached content

Some widgets have very expensive drawing paths. So caching the content
can be useful even when not scrolling.

This can help speed up widgets that are part of animation sequences and
thereby go through spurious expose events.

https://bugzilla.gnome.org/show_bug.cgi?id=751082

10 years agoUpdated Hebrew translation
Yosef Or Boczko [Wed, 17 Jun 2015 00:24:12 +0000 (03:24 +0300)]
Updated Hebrew translation

10 years agogdkwindow: avoid updating background pattern if it matches previous
Christian Hergert [Tue, 16 Jun 2015 21:40:09 +0000 (14:40 -0700)]
gdkwindow: avoid updating background pattern if it matches previous

Background patterns are often updated when style changes. In many cases,
the new pattern will match the previous. We can optimize out the
invalidation that will occur upon resetting the same pattern.

10 years agogtkplacessidebar: improve variable name
Carlos Soriano [Tue, 16 Jun 2015 14:54:24 +0000 (16:54 +0200)]
gtkplacessidebar: improve variable name

10 years agogtkplacessidebar: Remove some old comments
Carlos Soriano [Tue, 16 Jun 2015 14:25:33 +0000 (16:25 +0200)]
gtkplacessidebar: Remove some old comments

We didn't made up our minds until now from some of them, and for
the others no progress has been made or bugs reported, so probably
they are fine.

10 years agogtkplacesidebar: use GtkListBox
Carlos Soriano [Wed, 6 May 2015 21:07:17 +0000 (23:07 +0200)]
gtkplacesidebar: use GtkListBox

We were using GTkTreeView in a simple list. Also, as we know,
GtkCellRenderers are not the best way to theme and manipulate
widgets.

So instead use a GtkListBox to modernize the GtkPlacesSidebar,
and in the way clean up some parts of the code (like headings)
which were not used anymore.
Also we don't use a model anymore, since the data is simple
enough to manage it in a subclass of the row itself.

10 years agotheme: decrease list row transition
Carlos Soriano [Mon, 8 Jun 2015 17:01:45 +0000 (19:01 +0200)]
theme: decrease list row transition

It was somewhat annoying given the "trace" of it. Decrease
the time to avoid too much "trace"

10 years agogtkfilechooserwidget: show drop hints on gtkplacessidebar
Carlos Soriano [Sat, 11 Apr 2015 15:36:41 +0000 (17:36 +0200)]
gtkfilechooserwidget: show drop hints on gtkplacessidebar

Now with the API addition on gtkplacessidebar, we can show some
hints for the drop targets.

https://bugzilla.gnome.org/show_bug.cgi?id=747793

10 years agogtkplacessidebar: make insensitive invalid drop targets
Carlos Soriano [Mon, 11 May 2015 17:12:32 +0000 (19:12 +0200)]
gtkplacessidebar: make insensitive invalid drop targets

https://bugzilla.gnome.org/show_bug.cgi?id=747793

10 years agogtkplacessidebar: add new bookmark icon
Carlos Soriano [Sat, 11 Apr 2015 15:46:59 +0000 (17:46 +0200)]
gtkplacessidebar: add new bookmark icon

Following design mockups

https://bugzilla.gnome.org/show_bug.cgi?id=747793

10 years agogtkplacesidebar: remove obsolete drop state
Carlos Soriano [Thu, 11 Jun 2015 16:55:24 +0000 (18:55 +0200)]
gtkplacesidebar: remove obsolete drop state

We didn't use those for some time now.

10 years agogtkplacessidebar: add API for show drop hints
Carlos Soriano [Sat, 11 Apr 2015 15:35:23 +0000 (17:35 +0200)]
gtkplacessidebar: add API for show drop hints

It is convenient to allow applications to show all the drop
targets at once. This improves the user experience with drag
an drop.

The new API allows the application to set the gtkplacessidebar
in a mode where invalid drop targets are insensitive and it
adds a "new bookmark" row. This mode is intended to be set
when the application is aware of a dnd operation and needs to
be stopped kwhen the application is aware that dnd operation
was cancelled or ended in a different part than gtkplacesisdebar.

The context parameter is unused in this patch, but will be
used in next patches when the sidebar will use a GtkListBox.
The reason of being unused now is just convenience.

https://bugzilla.gnome.org/show_bug.cgi?id=747793

10 years agogtkplacessidebar: new bookmark row only at first position
Carlos Soriano [Sat, 11 Apr 2015 11:53:18 +0000 (13:53 +0200)]
gtkplacessidebar: new bookmark row only at first position

Following the new mockups, put the new bookmark row always
in the first position, so it's easier to drop an item.

https://bugzilla.gnome.org/show_bug.cgi?id=747793

10 years agoDeal with events from wrong display
Matthias Clasen [Mon, 15 Jun 2015 23:46:33 +0000 (19:46 -0400)]
Deal with events from wrong display

GtkInspector is opening a separate display connection, which makes
it more likely that gtk_get_current_event() returns an event from
the "wrong" display.

10 years agoGtkMenuButton: Make programmatic toggling work again
Matthias Clasen [Mon, 15 Jun 2015 23:42:47 +0000 (19:42 -0400)]
GtkMenuButton: Make programmatic toggling work again

This was broken in 0796d7b6ff9393746d.

https://bugzilla.gnome.org/show_bug.cgi?id=751018

10 years agoGtkMenuButton: Avoid direct button access
Matthias Clasen [Mon, 15 Jun 2015 22:54:13 +0000 (18:54 -0400)]
GtkMenuButton: Avoid direct button access

We were getting ourselves in trouble by casting touch events
to GdkEventButton and poking directly at their internals. Instead,
use GdkEvent API to get what we need.

This fixes a crash when using the gear menu in epiphany with
touch. The same crash also occurred in testmenubutton.